Electronic document policy compliance techniques

ABSTRACT

According to the described embodiments, an intermediate electronic messaging service is inserted into a message delivery path connecting to an e-mail entity such as an ISP. A database is provided in the intermediate service, the database having user profiles associated with the users of the ISP or other e-mail entity. The intermediate service receives email message over the electronic message delivery path into which it has been inserted, where the e-mail messages comprise at least content and IP routing information. Within the intermediate service, at least one of the content and the IP routing information of the received e-mail message is examined, and the e-mail message is then delivered to a destination based on the examination and in accordance with a user profile in the database in the intermediate service.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of application Ser. No. 11/276,924, filed Mar. 17, 2006, which is a continuation of application Ser. No. 10/672,688, filed Sep. 26, 2003, now U.S. Pat. No. 7,236,769, issued Jun. 26, 2007, which is a continuation of application Ser. No. 09/675,609, filed Sep. 29, 2000, now U.S. Pat. No. 6,650,890, issued Nov. 18, 2003. All of these disclosures are commonly assigned with the present application and incorporated herein by reference for all purposes.

FIELD OF ACTIVITY

Disclosed embodiments herein relate generally to electronic messaging, and more particularly to value-added electronic messaging services and techniques for monitoring of email policy compliance.

BACKGROUND

The adoption of e-mail has occurred at an unprecedented pace. Of routine computer users, most now have or soon will have an e-mail address. Many have more than one e-mail address, e.g., one for work and another for home. E-mail offers unparalleled convenience of written communication.

Because of the resources required to install and maintain an e-mail server, various companies have emerged offering e-mail outsourcing in which the e-mail server is provided by a third party outside the organization. E-mail outsourcing off-loads the responsibility for providing and maintaining e-mail service without necessitating any change in domain or e-mail addresses. In an outsourcing approach, E-mail is retrieved from an off-site e-mail server provided and maintained by the e-mail outsourcing company.

Lacking in the prior art is a way to deliver messages to various destinations according to “policy” decisions, which is to say decisions based on configured profiles. Further lacking is a way to make such policy decisions on a user-by-user basis in a managed email service.

SUMMARY OF THE INVENTION

Disclosed are techniques for monitoring e-mail policy compliance. Specifically disclosed is an electronic messaging service operating on behalf on an ISP or other e-mail entity operable to send and receive messages on behalf of its users over electronic message delivery paths between the e-mail entity and sending and receiving servers.

According to the described embodiments, the intermediate electronic messaging service is inserted into at least one of the electronic message delivery paths by changing an MX record in a DNS database containing an IP address of a mail server of the email entity to contain an IP address for the intermediate mail service. A database is further provided in the intermediate service, the database having user profiles associated with the users of the e-mail entity. The intermediate service then receives email messages over the at least one electronic message delivery path into which it has been inserted, where the e-mail message comprises at least content and IP routing information.

Within the intermediate service, at least one of the content and the IP routing information of the received e-mail message is examined, and the e-mail message is then delivered to a destination based on the examination and in accordance with a user profile in the database in the intermediate service.

In further accordance with the disclosed embodiments, an intermediate electronic messaging service may perform value-added processing on the electronic message, apply user-based policy decisions, which include the routing of emails to certain destinations based on policy decisions according to a user profile. These policy decisions are executed, for example, by application of e-mail filters to the electronic messages, application of virus checkers for checking the electronic message and attachments in the electronic message, blocking e-mails based on content and IP routing information, delivery of normal “clean” e-mails, and holding of “suspected” e-mails in a quarantine area where notifications may be generated and sent according to the configurable profiles. Such policy decisions, in other words, typically deliver “good” emails, or emails complying with policy, as addressed, whereas “bad” emails, or emails conflicting with policy, are redirected or quarantined.

The foregoing has outlined preferred and alternative features of various embodiments of the disclosed principles so that those skilled in the art may better understand the detailed description that follows. Additional features will be described hereinafter that form the subject of the claims appended herein. Those skilled in the art should appreciate that they can readily use the disclosed conception and specific embodiments as a basis for designing or modifying other structures for carrying out the same purposes of the disclosed principles. Those skilled in the art should also realize that such equivalent constructions do not depart from the spirit and scope of the disclosed principles.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosed principles may be further understood from the following description in conjunction with the appended drawings. It is emphasized that various features may not be drawn to scale. In fact, the dimensions of various features may be arbitrarily increased or reduced for clarity of discussion. In addition, it is emphasized that some components may not be illustrated for clarity of discussion. In the drawings:

FIG. 1 is a diagram illustrating the multiple e-mail box conundrum;

FIG. 2 is a diagram illustrating “spamming” of the user of FIG. 1;

FIG. 3 is a diagram of one embodiment of a unified message delivery system;

FIG. 4 is a block diagram of one embodiment of the intermediate server(s) of FIG. 3;

FIG. 5A is a more detailed block diagram of one embodiment of the server of FIG. 4;

FIG. 5B is an alternate diagram of one embodiment of the server of FIG. 4;

FIG. 6 is a diagram of an exemplary embodiment showing a configuration screen display that may be used to configure the unified message delivery system; and

FIG. 7 is a diagram emphasizing end user configuration and mail processing.

DETAILED DESCRIPTION

Referring now to FIG. 3, a diagram is shown of one embodiment of a unified message delivery system. The system provides for a service that allows the user to define where messages are routed across multiple devices, which portions of messages are routed to which devices, etc. The system allows for ready integration with an end-user's primary e-mail service and is end-user configurable.

As compared to FIG. 1, in which the electronic message delivery path proceeds through the Internet directly to one of a multiplicity of servers or gateways, in the system of FIG. 3, an intermediate pre-processing service 301 is inserted into the message delivery path. The intermediate pre-processing service 301 preferably comprises an NOC including an array of mail handling machines, a database, a file store, web servers and utility machines. The intermediate pre-processing service 301 is in turn connected to the various servers and gateways of FIG. 1, including, for example, a user's primary ISP 303, if any. Such connection typically also occurs through the Internet (305). The collection of servers and gateways 307 provide e-mail access for a variety of wired and wireless client devices 309, which may include, for example, a main e-mail system (typically a home or office desktop computer), a free web-based mail system (e.g., Yahoo or the like), a PDA (e.g., Palm VII), a cell phone and a pager. A typical user will use two or more of the foregoing electronic message delivery options and some users will use most or all of these options.

By established user-defined preferences, the user is able to control the flow of messages to the various devices. Preferences are configured using web browser software to create or modify a user profile. User profiles are stored in a relational database (not shown) accessible to the intermediate pre-processing service. Note that end-user configuration may occur via any web-enabled device, either wired or wireless. Wireless web access may be supported using technologies presently-known in the art such as Palm's “web clipping” technologies, the UPLink server suite of Phone.com of Redwood City, Calif., Wireless Application Protocol (WAP)-enabled cellphones, etc.

To take a concrete example, there may be three e-mail messages delivered to the intermediate pre-processing service 301 for a particular user, an urgent message, a message from the user's boss, and a message from the user's friend. In this example, the e-mail from the user's friend might be delivered to the user's main e-mail system and to the user's free web mail system. The e-mail from the user's boss might be delivered to the user's PDA. The urgent message might be delivered to the user's cell phone and to the user's pager.

FIG. 3 illustrates the different manner of operation of the message delivery system of FIG. 3, including the intermediate pre-processing service 301, as compared to the conventional electronic message delivery path of FIG. 1. Say, for example, that user A, (e.g., Sue@standford.edu) wishes to send an e-mail to user B (e.g., Tom@aol.com). Sue uses an e-mail program to create, address and send the e-mail. The mail is sent from Sue's computer to the local mail server for Sue's computer, which may reside on Sue's local area network or at an ISP. The local mail server queries a Domain Name Server (DNS) 311 to obtain the IP address for Tom@aol.com. Normally, the local mail server uses the IP address returned by DNS to send the e-mail to the destination e-mail server for Tom's computer, (e.g., mail.aol.com). The e-mail is then delivered to Tom's computer.

In one embodiment of the present system, the normal electronic message delivery path is broken and the intermediate pre-processing service 301 is inserted into the electronic message delivery path. This result is easily accomplished by modifying the appropriate DNS record (such as the MX—mail exchange—record, for example) to point to the intermediate pre-processing service 301 instead of the destination e-mail server (e.g., 303). In this manner, the electronic message delivery path is modified such that the intermediate pre-processing service 301 handles all of the electronic messages that would otherwise have been handled by the destination e-mail server.

Given the ease with which the intermediate pre-processing service may be inserted into the message delivery path, the enrollment of ISPs in cooperative messaging service agreements with the operator of the intermediate pre-processing service (Electronic Messaging Service Provider, or EMSP) may be automated to a great extent. For example, the ISP may visit the web site of EMSP, indicate assent to terms and conditions, and specify billing information and a service start date.

Prior to the service start date, the ISP advises subscribers and arranges for its DNS entries to be modified appropriately as of the service start date.

Prior to the start date, users are advised by e-mail of additional available message center services. Each user is assigned a user name and password in order to access a message center web site. When the user first visits the message center web site, the user creates a profile that will be used thereafter to select and configure value-added service (e.g., junk e-mail filtering and virus checking) and to control message delivery. Within the profile, the user may designated a particular e-mail server as the user's main e-mail system. Profiles place users in control of their mail experience. Alternatively, A service provider can create a default profile of services and the user can visit the message center web site to modify the default configuration.

When the intermediate pre-processing service 301 receives an e-mail, it look ups the addressee's user profile. The intermediate pre-processing service then performs value-added processing of the message. For example, the intermediate pre-processing service may apply user-selected junk e-mail filters and user-selected virus checkers for checking attachments. Junk-e-mail blocking may be based on both content and IP routing information. “Clean” e-mail is delivered to the user's mail server as normal. Suspect messages, instead of being deleted without notification to the user, are held in a quarantine area, and the user is notified. The user can then, if desired, download messages flagged as suspect by accessing the message center web site.

Alternatively or in addition, the intermediate pre-processing service may deliver to the message to one or more wireless devices in accordance with the user profile, e.g., by forwarding the message to one or more servers or gateways 307 the addresses of which have been specified by the user in the user's profile. Prior to forwarding the message to a server or gateway, the intermediate pre-processing service 301 may perform any necessary reformatting to meet the requirements of a particular recipient device.

In general, a user may configure an arbitrary number of communication “channels,” each channel including a destination and, optionally, one or more message modification procedures including filters, reformatters, etc. that may affect message presentation, be required for message transport, etc.

The intermediate pre-processing service 301 may perform myriad other types of services. One example of such services involves certain attachments, e.g., rich media items such as MP3, JPEG, MPEG, etc. Such items are notorious “bandwidth hogs” and can easily clog up the message delivery system. Rather than simply delete such items, however, the intermediate pre-processing service 301 allows such items to be intelligently managed. One option is to treat rich media in like manner as junk e-mail. That is, rich media items, instead of being delivered with the e-mail messages to which they are attached, are delivered to the message center web site, and the user is notified. The user can then view/play or ignore the items as desired.

Another option is to produce replacement attachments, i.e., “thumbnail” versions of the rich media items. An option may be provided for the original full attachment(s) to be delivered to the user with a subsequent system-generated e-mail message. For example, a link may be embedded in the thumbnail along with appropriate text advising the user to click on the link to receive the full attachment. In one embodiment, clicking on the link takes the user to a complete, high-resolution image residing in the user's personal message center.

Note that the functionality of the intermediate pre-processing service may be implemented at ISPs rather than at a central NOC without any sacrifice of functionality or any noticeable effect on the end user. In this instance, DNS information remains unchanged. In this scenario, however, ISPs must be persuaded to invest in additional hardware and/or software.

Referring to FIG. 4, a generalized block diagram is shown of one embodiment of the intermediate pre-processing service 301 of FIG. 3. One or more messaging servers 401, e.g., e-mail servers, are provided, realizing a receive and store function 403 and a forward function 405. The forward function incorporates various value-added services such as filtering, formatting, routing, multicasting, etc. Due to the multicasting feature of the forward block 405, a single incoming message may result in the forwarding of some greater number of outgoing messages.

The forward block 405 communicates with storage 407, which may include one or more relational databases or file servers. Storage 407 includes profile and local DNS information 409 for each subscriber, as well as a “quarantine” area 411 for storing filtered messages, e.g., messages determined to be unfit to forward. Subscribers are provided access to storage 407 through one or more web servers 413, allowing subscribers to configure their profiles, view filtered messages, etc.

Referring to FIG. 5A, a more detailed block diagram is shown of the intermediate pre-processing service 301 in accordance with an exemplary embodiment of the invention. Multiple hosts are defined on both the inbound mail server and the outbound mail server. Each host runs a copy of an appropriate mail program such as FreeBSD Qmail. In one alternate embodiment, a machine or a cluster of machines operates as a mail-receiving machine and a mail-delivering machine. This machine will accept a connection from a sending SMTP server and begin receiving data. Simultaneously, the machine will begin receiving the message data, querying the database for a specific user configuration, processing messages based on configuration, opening a connection to a receiving SMTP server, and delivering it. Standard mail server software is not required for this alternate embodiment.

Incoming mail is routed to an available host by a load balancer 505, or load-sharing switch/router, of a type commonly available from Cisco and other network equipment manufacturers. The server cluster 501 can include a server running a relational database management system such as Oracle, for example. The host queries the database to identify the user and user preferences. The host then processes the message as specified in the user profile. For spam checking, each host runs a copy of an appropriate spam filter. Virus checking can be done using a virus scanning application such as that available from Trend.

Good e-mails are addressed with one or more addresses in accordance with information specified in the user profile and sent to the outbound mail server cluster to be sent out. To deliver a message addressed to user@isp.com, our intermediate preprocessing lookup service looks up user@postini-mail.isp.com and delivers. This allows the ISP to update the final delivery location without requiring the intermediate preprocessing service to make any changes. The e-mail is sent to the ISP mail server 511 and possibly to other servers or gateways in accordance with the user profile.

Bad e-mails are saved “in quarantine” on a message center web site, and a notification e-mail is sent to the user. In the illustrated embodiment, the inbound mail server cluster is connected to a file store 521. The file store is in turn connected to a web server 523. When a user logs on to the web server, a web page is displayed that includes a link for displaying a summary of quarantined messages and/or attachments. By clicking on a selected item, the user is able to view the item and, depending on the attachment type, may be able to view the attachment. If the user so chooses, the user may be allowed to download an item suspected to contain a virus after the user has been given appropriate warning.

FIG. 5B shows an alternate diagram of a system of the present invention.

FIG. 6 shows an example of a web form screen display that may be filled out by the user to configure message delivery for that user and subsequently modified to modify the configuration. In the example shown, a subsequent screen display is shown after one of the mail filter items is selected.

In accordance with a further feature of the invention, devices may be provided with a background software routine that periodically notifies the messaging system, automatically, of the time of last user input to the device. This information may be used to dynamically route messages to increase the likelihood of early receipt by the user. For example, a user may specify messages to normally be delivered to the user's cellphone between the hours of 8-9 AM, 12-1 PM and 6-7 PM, and to the user's work between the hours of 9-12 AM and 1-6 PM, in accordance with the user's normal routine. On a particular afternoon, however, the user may be away from the office and may have used his/or her cellphone to receive or make one or more calls, or to access information, etc. If the user has selected a “find me” configuration option, then this usage information may be used to intelligently route messages to the user's cellphone, for example.

The value-added electronic messaging system detailed in the foregoing description provides an elegant solution to the multiple e-mail box conundrum. User-centric in design, the system is end-user configurable and uses an intuitive web metaphor. Based on a scalable architecture, the system works with existing e-mail accounts and does not require hardware or software integration.

FIG. 7 is a diagram of one embodiment of the system of the present invention emphasizing end user configuration and mail processing.

It will be appreciated by those of ordinary skill in the art that systems and methods employing the disclosed principles can be embodied in other specific forms without departing from the spirit or essential character thereof. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restrictive. The scope of the disclosed principles is indicated by the appended claims rather than the foregoing description, and all changes that come within the meaning and range of equivalents thereof are intended to be embraced therein.

Additionally, the section headings herein are provided for consistency with the suggestions under 37 CFR 1.77 or otherwise to provide organizational cues. These headings shall not limit or characterize the invention(s) set out in any claims that may issue from this disclosure. Specifically and by way of example, although the headings refer to a “Technical Field,” the claims should not be limited by the language chosen under this heading to describe the so-called technical field. Further, a description of a technology in the “Background” is not to be construed as an admission that technology is prior art to any invention(s) in this disclosure. Neither is the “Brief Summary” to be considered as a characterization of the invention(s) set forth in the claims found herein. Furthermore, any reference in this disclosure to “invention” in the singular should not be used to argue that there is only a single point of novelty claimed in this disclosure. Multiple inventions may be set forth according to the limitations of the multiple claims associated with this disclosure, and the claims accordingly define the invention(s), and their equivalents, that are protected thereby. In all instances, the scope of the claims shall be considered on their own merits in light of the specification, but should not be constrained by the headings set forth herein. 

1. A method of providing electronic document services in a computer network comprising a document management entity operable to provide electronic documents to users over electronic document delivery paths between the document management entity and document users, the method comprising: providing a document management entity remote from the users' servers and connected to the users' servers through the Internet; providing a database associated with the document management entity, the database having user profiles associated with one or more of the users; storing an electronic document in the document management entity, the stored electronic document addressed to at least one of the one or more users and transmitted across the Internet from a sending server at a source of the electronic document; determining an IP address of the source for the stored electronic document; examining at least one of the electronic document content and the electronic document source; and processing the electronic document and determining options for providing access to or delivering the processed electronic document to the one or more users, both based on the examination of the at least one of the electronic document content and the electronic document source, and further in accordance with the user profile of the one or more users.
 2. A method according to claim 1, wherein the processing further comprises notifying the one or more users of the storing of the electronic document in the document management entity.
 3. A method according to claim 1, wherein the processing further comprises providing access to the electronic document to the one or more users via the document management entity.
 4. A method according to claim 3, wherein providing access further comprises providing access via the Internet.
 5. A method according to claim 1, wherein the processing further comprises delivering the entire electronic document to the one or more users.
 6. A method according to claim 1, wherein the processing further comprises delivering a hyperlink to the stored electronic document to the one or more users.
 7. A method according to claim 1, wherein the processing comprises processing the electronic document source according to rules in the user profile of the one or more users to whom the electronic document is addressed that are established by the one or more users.
 8. A method according to claim 1, wherein the examining comprises examining the at least one of the electronic document content and electronic document source according to rules in the user profile.
 9. A method according to claim 1, wherein the processing further comprises delivering different portions or versions of the electronic document to the one or more users.
 10. A method according to claim 1, wherein the processing further comprises identifying a media part of the stored electronic document, modifying the electronic document by substituting different electronic content for the media part, and delivering the modified electronic document to the one or more users.
 11. A method according to claim 10, wherein the different electronic content is derived from the media part.
 12. A method according to claim 10, wherein the different electronic content is descriptive of the media part.
 13. A method according to claim 1, wherein the processing further comprises formatting at least a portion of the electronic document in accordance with a receiving device of the one or more users, and providing the at least a portion of the electronic document to that receiving device.
 14. A method according to claim 1, wherein the document management entity creates the user profile.
 15. A method according to claim 1, wherein the user profile is modifiable by a user who is an intended recipient of the stored electronic document.
 16. A method according to claim 1, wherein the examining further comprises filtering the stored electronic document, and wherein the processing further comprises storing filtered documents determined to be malicious in a quarantine area.
 17. A method according to claim 16, further comprising sending a notification to the one or more users regarding the storing of the malicious electronic document in the quarantine area.
 18. An electronic document system for managing electronic documents in a computer network, the system comprising: a document management entity operable to provide electronic documents to users over electronic document delivery paths between the document management entity and document users, the document management entity remote from the users' servers and connected to the users' servers through the Internet; a database associated with the document management entity, the database having user profiles associated with one or more of the users and configured to store in the document management entity an electronic document addressed to at least one of the one or more users and transmitted across the Internet from a sending server at a source of the electronic document; and wherein the document management entity comprises an electronic document processor configured to: determine an IP address of the source for the stored electronic document, examine at least one of the electronic document content and the electronic document source, and process the electronic document and determine options for providing access to or delivering the processed electronic document to the one or more users, both based on the examination of the at least one the electronic document content and the electronic document source, and further in accordance with the user profile of the one or more users.
 19. A system according to claim 18, wherein the electronic document processor is further configured to notify the one or more users of the storing of the electronic document in the document management entity.
 20. A system according to claim 18, wherein the electronic document processor is further configured to provide access to the electronic document to the one or more users via the document management entity.
 21. A system according to claim 20, wherein providing access comprises providing access via the Internet.
 22. A system according to claim 18, wherein the electronic document processor is further configured to deliver the entire electronic document to the one or more users.
 23. A system according to claim 18, wherein the electronic document processor is further configured to deliver a hyperlink to the stored electronic document to the one or more users.
 24. A system according to claim 18, wherein the electronic document processor is further configured to process the electronic document source according to rules in the user profile of the one or more users to whom the electronic document is addressed that are established by the one or more users.
 25. A system according to claim 18, wherein the processing by the electronic document processor further comprises examining the at least one of the electronic document content and electronic document source according to rules in the user profile.
 26. A system according to claim 18, wherein the processing by the electronic document processor further comprises delivering different portions or versions of the electronic document to the one or more users.
 27. A system according to claim 18, wherein the processing by the electronic document processor further comprises identifying a media part of the stored electronic document, modifying the electronic document by substituting different electronic content for the media part, and delivering the modified electronic document to the one or more users.
 28. A system according to claim 27, wherein the different electronic content is derived from the media part.
 29. A system according to claim 27, wherein the different electronic content is descriptive of the media part.
 30. A system according to claim 18, wherein the processing by the electronic document processor further comprises formatting at least a portion of the electronic document in accordance with a receiving device of the one or more users, and providing the at least a portion of the electronic document to that receiving device.
 31. A system according to claim 18, wherein the document management entity creates the user profile.
 32. A system according to claim 18, wherein the user profile is modifiable by a user who is an intended recipient of the stored electronic document.
 33. A system according to claim 18, wherein the examining by the electronic document processor further comprises filtering the stored electronic document, and wherein the processing by the electronic document processor further comprises storing filtered documents determined to be malicious in a quarantine area.
 34. A system according to claim 33, wherein the electronic document processor is further configured to send a notification to the one or more users regarding the storing of the malicious electronic document in the quarantine area.
 35. A method of providing electronic document services in a computer network comprising a document management entity operable to provide electronic documents to users over electronic document delivery paths between the document management entity and document users, the method comprising: providing a document management entity remote from the users' servers and connected to the users' servers through the Internet; providing a database associated with the document management entity, the database having user profiles associated with one or more of the users; storing an electronic document in the document management entity, the stored electronic document addressed to at least one of the one or more users and transmitted across the Internet from a sending server at a source of the electronic document; determining an IP address of the source for the stored electronic document; examining at least one of the electronic document content and the electronic document source; processing the electronic document based on the examination of the at least one the electronic document content and the electronic document source, and further in accordance with the user profile of the one or more users to whom the document is addressed; delivering a hyperlink to the stored electronic document to the one or more users; providing access via the document management entity to the electronic document to the one or more users that click on the hyperlink; and determining options for providing access to or delivering the entire electronic document to the one or more users that clicked on the hyperlink also based on the examination of the at least one the electronic document content and the electronic document source, and further in accordance with the user profile of the one or more users.
 36. A method according to claim 35, wherein providing access further comprises providing access via the Internet.
 37. A method according to claim 35, wherein the processing comprises processing the electronic document source according to rules in the user profile of the one or more users to whom the electronic document is addressed that are established by the one or more users.
 38. A method according to claim 35, wherein the examining comprises examining the at least one of the electronic document content and electronic document source according to rules in the user profile.
 39. A method according to claim 35, wherein the processing further comprises formatting at least a portion of the electronic document in accordance with a receiving device of the one or more users, and providing the at least a portion of the electronic document to that receiving device.
 40. A method according to claim 35, wherein the examining further comprises filtering the stored electronic document, and wherein the processing further comprises storing filtered documents determined to be malicious in a quarantine area. 